草庐IT

c++ - Qml C++ 查找 child

全部标签

c++ - 从 'triangle-soup' 中查找唯一顶点

我正在两个库(Opencascade和DWF工具包)之上构建一个CAD文件转换器。但是,我的问题与平台无关:给定:我生成了一个网格,作为三角形面的列表,形成了通过我的应用程序构建的模型。每个三角形都是通过三个顶点定义的,三个顶点由三个float(x、y和z坐标)组成。由于三角形形成一个网格,大部分顶点由多个三角形共享。目标:我需要找到唯一顶点的列表,并生成一个由该列表中三个索引的元组组成的面数组。我想做的是://step1:buildalistofuniqueverticesforeachtriangleforeachvertexintriangleifnotvertexinlistO

c++ - 从 lambda 调用函数时的查找规则是什么?

下面的例子演示了我在VC++2010中遇到的问题:classFoo{templatestaticTfoo(Tt){returnt;}public:voidtest(){autolambda=[](){returnfoo(1);};//calltoFoo::foolambda();}};VC++产生:errorC3861:'foo':identifiernotfound如果我限定对foo的调用:Foo::foo(1);那么这个例子编译时会出现警告:警告C4573:'Foo::foo'的使用要求编译器捕获'this'但当前默认捕获模式不允许它关于这个案例,标准是怎么说的?是否应该找到不合格

c++ - 如何在 Visual Studio 中查找静态 c/c++ 库中的函数

我有一个应用程序和一个静态库。该库似乎构建得很好-它肯定编译我的foo和bar和geewhizz函数很好,并且创建静态库没有任何错误或警告。但是,当应用程序构建并链接到静态库时,它设法链接到函数foo和bar但找不到函数geewhizz。我如何判断geewhizz是否进入了图书馆?我看不到库的任何/map选项,就像用于构建应用程序的那样。并且在构建应用程序时使用\map选项是没有意义的,因为它找不到我的geewhizz函数,并且没有根据报告它。我正在混合使用C和C++,我怀疑可能是函数名称重整/翻译问题或调用约定问题导致了问题,所以我认为包含函数列表图书馆应该能够阐明这一点。但是,如果

c++ - 我们可以使用异构查找比较器对 STL 关联容器执行 "partial-match"搜索吗?

所以我在STL的关联容器(自C++14起)中寻找对异构查找的支持,并对我们可以做什么和不应该做什么感到有点困惑。以下片段#include#include#includestructpartial_compare:std::less{//"full"key_typecomparisondonebystd::lessusingless::operator();//"sequence-partitioning"comparison:onlycheckpair'sfirstmemberbooloperator()(std::pairconst&lhs,intrhs)const{returnlh

c++ - 不合格的名称查找 : Why local declaration hides declaration from using directive

考虑这段代码:namespaceA{inti=24;}namespaceB{usingnamespaceA;inti=11;intk=i;//findsB::i,noambiguity}和basic.lookup.unqual.2:§6.4.1Unqualifiednamelookup[basic.lookup.unqual]Thedeclarationsfromthenamespacenominatedbyausing-directivebecomevisibleinanamespaceenclosingtheusing-directive;see[namespace.udir].F

c++ - 如何正确调试并查找崩溃原因?

我不知道该怎么办了……没希望了。我厌倦了猜测是什么导致了崩溃。最近我注意到一些opengl调用在一些gfx卡上随机崩溃程序。所以我现在真的很偏执什么会导致崩溃。这个崩溃的坏处是它只有在长时间使用该程序后才会崩溃,所以我只能猜测是什么问题。我不记得我对程序进行了哪些更改可能会导致崩溃,已经很久了。但幸运的是,以前的版本没有崩溃,所以我可以复制粘贴一些代码并浪费10个小时来查看它从什么时候开始崩溃......我想我还不想那样做。程序在我让它连续处理相同的文件大约5次后崩溃,每次它在进程中使用大约200兆字节的内存。它在读取过程中和之后随机崩溃。我创建了一个“安全”的free()函数,它检查

c++ - 优化头痛 - 从查找表中删除 if's

我正在尝试优化以下代码,这是我的应用程序中的瓶颈。它的作用:它采用double值value1和value2并尝试找到包含校正因子的最大值。如果两个值之间的差异大于5.0(LUT按因子10缩放),我可以取这两个值的最大值。如果差异小于5.0,我可以使用LUT中的校正因子。有没有人知道什么是这段代码的更好风格?我不知道我在哪里浪费了时间-是大量的ifs还是乘以10?doublevalue1,value2;//LookupTablescaledby10for(ln(1+exp(-abs(x)))),whichisalmost0forx>5andsymmetricalaround0.LUT[0

C++11 元编程 - 在编译期间查找枚举值(值包含间隙)

有没有办法在编译时验证给定的值在给定枚举的值范围内,因此有效?enummyenum{val1=10,val2=30,val3=45}templateclassmyClass{...}myClassa;//fails,OKmyClassb;//compilesOKmyClassc;//compiles,NOTOK!在那里使用第二个模板非类型bool参数会很有用,该bool值的值将由元函数给出,给定的值将验证该值是否在myenum的值内。我查看了各种与枚举相关的问题,例如如何迭代枚举,但似乎无法完成。 最佳答案 enummyenum{v

c++ - 在 C++ 中查找和存储超像素邻域的算法和数据结构

我有一张图片,保存着分割结果,就像这张图片。我需要构建一个以不同颜色着色的补丁邻域图。结果我想要一个结构,代表以下内容这里的数字代表独立的补丁,线条代表补丁的邻域。目前我不知道从哪里开始,谷歌搜索哪些关键字。谁能提出一些有用的建议?图像存储在OpenCV的cv::Mat类中,至于图,我打算使用Boost.Graph库。所以,请给我一些指向代码示例和算法或关键字的链接。谢谢。更新。在茶歇和一些讨论之后,我想到了以下内容。构建一个大点阵图,其中每个节点对应每个图像像素,链接连接8或4个邻居。用相应的像素值标记每个图节点。尝试以某种方式合并具有相同标签的节点。我的另一个问题是我不熟悉BGL(

c++ - 查找抛出 std::out_of_range 的对象

我的一个程序抛出一个std::out_of_range。我知道这样做的原因,我正在某处访问索引为-1的vector。我不知道的是vector的名称(变量名称)和代码中的位置。我的程序产生的错误消息如下所示:terminatecalledafterthrowinganinstanceof'std::out_of_range'what():vector::_M_range_checkzsh:abort(coredumped)./main.xconfig.cfg而由其他人(他也使用g++)的代码生成的错误消息发布在问题C++accessingvector中看起来像这样:Errorforvec